package demo1210.am;

/*
重载(overload):在一个类中,方法名相同,参数列表不同,就是方法的重载.
重写(override):在父子类中,子类定义和父类一模一样的方法,就是方法的重写.

继承:多个类中有相同的属性和行为,抽取到一个父类中,让其子类继承该父类.
继承的特点:子类可以拥有父类中非私有的成员变量和成员方法.
注意:构造方法不会被继承.

继承后,创建子类对象,调用成员变量或者成员方法,优先去子类中查找,
子类没有就调用父类.
子类的构造方法:
默认的第一条语句必须是使用super去调用父类的构造方法.

super:在子类中的方法中使用.
  1.使用super在子类中的构造方法的第一条语句去调用父类的构造方法.

  2.当子类和父类有相同的成员变量和成员方法的时候,在子类的方法中
  可以使用super来调用父类中的成员变量和成员方法.
 */
public class Demo_01 {
    public static void main(String[] args) {
        B b = new B();
        b.print();
    }
}

class A {
    int num = 20;

    public void show() {
        System.out.println("父类中的方法");
    }
}

class B extends A {
    int num = 10;

    @Override
    public void show() {
        System.out.println("子类中的方法");
    }

    public void print() {
        System.out.println(super.num);
        super.show();
    }
}